package StringTest;

public class Test3Case1 {
    public static void main(String[] args) {
        String s1 = "abcde";
        String s2 = "adeab";

        //1.调用方法进行比较
        boolean flag = cheak(s1, s2);
        System.out.println(flag);


        //1.bcdea
        //2.cdeab
        //3.deabc
        //4.eabcd
        //5.abcde


    }
    public static boolean cheak(String s1, String s2) {
        for (int i = 0; i < s1.length(); i++) {
            s1=rotate(s1);
            if(s1.equals(s2)){
                return true;
            }
        }
        //所有的情况都完毕了,还不一样那么就直接返回false
        return false;
    }

    //作用: 旋转字符串,把左侧的字符移动到右侧去
    //形参:旋转前的字符串
    //返回值:旋转后的字符串
    public static String rotate(String str) {
        //看到要修改字符串的内容
        //可以有2种方法
        //1.用substring进行截取,把左边的字符截取拼接到右侧去
        //2.可以把字符变成一个字符数组,然后调整字符数组里面的数据,最后把字符数组变成字符串

        //方法1
        //获取最左边的字符
        char first = str.charAt(0);
        //剩余字符
        String end = str.substring(1);
        str = end + first;
        return str;

    }
}
